The present inventive concepts relate to memory integrated circuits, and more particularly to enabling higher data bandwidth in random access memory while maintaining compatibility with industry standards.
Semiconductor memory devices have been widely used in electronic systems to store data. There are generally two types of semiconductor memories, including non-volatile and volatile memories. A volatile memory device, such as a Static Random Access Memory (SRAM) or a Dynamic Random Access Memory (DRAM) device, loses its data when the power applied to it is turned off. In contrast, a non-volatile semiconductor memory device, such as a Flash, Erasable Programmable Read Only Memory (EPROM) or a magnetic random access memory (MRAM), retains its charge even after the power applied thereto is turned off. Therefore, where loss of data due to power failure or termination is unacceptable, a non-volatile memory is used to store the data.
FIG. 1A is a simplified cross-sectional view of a magnetic tunnel junction (MTJ) structure 10 used in forming a spin transfer torque (STT) MRAM cell. MTJ 10 is shown as including, in part, a reference layer 12, a tunneling layer 14, and a free layer 16. Reference layer 12 and free layer 16 are ferromagnetic layers. Tunneling layer 14 is a nonmagnetic layer. The direction of magnetization of reference layer 12 is fixed and does not change. The direction of magnetization of free layer 16, however, may be varied by passing a sufficiently large current through the MTJ structure. In FIG. 1A, reference layer 12 and free layer 16 are assumed to have the same magnetization direction, i.e., they are in a parallel state. In FIG. 1B, reference layer 12 and free layer 16 are assumed to have opposite magnetization directions, i.e., they are in an anti-parallel state. In FIG. 1C, reference layer 12 and free layer 16 are assumed to have the same magnetization direction perpendicular to a plane defined by the interface of free layer 16 and tunneling layer 14. In FIG. 1D, reference layer 12 and free layer 14 are assumed to have opposite magnetization directions perpendicular to a plane defined by the interface of free layer 16 and tunneling layer 14.
To switch from the parallel state, as shown in FIG. 1A, to the anti-parallel state, as shown in FIG. 1B, the voltage potential of reference layer 12 is increased relative to that of free layer 16. This voltage difference causes spin polarized electrons flowing from free layer 16 to reference layer 12 to transfer their angular momentum and change the magnetization direction of free layer 16 to the anti-parallel state, as shown in FIG. 1B. To switch from the anti-parallel state to the parallel state, the voltage potential of free layer 16 is increased relative to that of reference layer 12. This voltage difference causes spin polarized electrons flowing from reference layer 12 to free layer 16 to transfer their angular momentum and change the magnetization direction of free layer 16 to the parallel state, as shown in FIG. 1A.
To switch from the parallel state to the non-parallel state or vice versa, the voltage applied to MTJ 10 and the corresponding current flowing through MTJ must be greater than a respective pair of threshold values. The voltage that must exceed a threshold voltage in order for the switching to occur is also referred to as the switching voltage Vc. Likewise, the current that must exceed a threshold current in order for the switching to occur is referred to as the switching current Ic. As is well known, when free layer 16 and reference layer 12 have the same magnetization direction (i.e., parallel state), MTJ 10 has a relatively low resistance. Conversely, when free layer 16 and reference layer 12 have the opposite magnetization direction (i.e., anti-parallel state), MTJ 10 has a relatively high resistance. Due to the physical properties of an MTJ, the critical current required to change an MTJ from a parallel state to an anti-parallel state is often greater than the critical current required to change the MTJ from an anti-parallel state to a parallel state.
FIG. 2A shows an MTJ 10 and an associated select transistor 20 together forming an STT-MRAM cell 30. Transistor 20 is often an NMOS transistor due to its inherently higher current drive, lower threshold voltage, and smaller area relative to a PMOS transistor. As is described further below, the current used to write a “1” in MRAM 30 is different than the current used to write a “0”. The asymmetry in the direction of current flow during these two write conditions is caused by the asymmetry in the gate-to-source voltage of transistor 20. Accordingly, a write driver adapted to deliver sufficient current to write a “0”, may not be able to provide enough current to write a “1”. Similarly, a write driver adapted to deliver sufficient current to write a “1” may deliver a current that is greater than what would otherwise be an acceptable current level to write a “0”.
In the following description, an MRAM cell is defined as being in a logic “0” state when the free and reference layers of its associated MTJ are in a parallel (P) state, i.e., the MTJ exhibits a low resistance. This low resistance state is also alternatively shown as Rlow or RP state. Conversely, an MRAM cell is defined as being in a logic “1” state when the free and reference layers of its associated MTJ are in an anti-parallel (AP) state, i.e., the MTJ exhibits a high resistance. This high resistance state is also alternatively shown as Rhigh or RAP state. It will be understood that in other embodiments, the MRAM cell can be defined as being in the logic “0” state when in an AP state, and the logic “1” state when in a P state. Furthermore, in the following, it is assumed that the reference layer of the MTJ faces its associated select transistor, as shown in FIG. 2A. Therefore, in accordance with the discussion above, a current flowing along the direction of arrow 35 (i.e., the up direction) either (i) causes a switch from the P state to the AP state thus to write a “1”, or (ii) stabilizes the previously established AP state of the associated MTJ. Likewise, a current flowing along the direction of arrow 40 (i.e., the down direction) either (i) causes a switch from the AP state to the P state thus to write a “0”, or (ii) stabilizes the previously established P state of the associated MTJ. It is understood, however, that in other embodiments this orientation may be reversed so that the free layer of the MTJ faces its associated select transistor. In such embodiments (not shown), a current flowing along the direction of arrow 35 either (i) causes a switch from the AP state to the P, or (ii) stabilizes the previously established P state of the associated MTJ Likewise, in such embodiments, a current flowing along the direction of arrow 40 either (i) causes a switch from the P state to the AP state, or (ii) stabilizes the previously established AP state. FIG. 2B is a schematic representation of MRAM 30 of FIG. 2A in which MTJ 10 is shown as a storage element whose resistance varies depending on the data stored therein. The MTJ changes its state (i) from P to AP when the current flows along arrow 35, and/or (ii) from AP to P when the current flows along arrow 40.
As described above, the voltage required to switch an MTJ from an AP state to a P state, or vice versa, must exceed a critical value Vc. The current corresponding to this voltage is referred to as the critical current Ic. FIG. 3 represents the variation in the MTJ state (or its resistance) during various write cycles. To transition from the P state (i.e., low resistance state) to AP state (i.e., high resistance state), a positive voltage of Vc is applied. Once in the AP state, removing the applied voltage does not affect the state of the MTJ. Likewise, to transition from the AP state to the P state, a negative voltage of Vc is applied. Once in the P state, removing the applied voltage does not affect the state of the MTJ. The resistance of the MTJ is Rhigh when it is in AP state and receives no or very small voltage. Likewise, the resistance of the MTJ is Rlow when it is in P state and receives no or very small voltage.
FIG. 4A shows an MTJ 10 being programmed to switch from an anti-parallel state (i.e., high resistance state, or logic “1” state) to a parallel state so as to store a “0” (i.e., low resistance state, or logic “0” state). It is assumed that MTJ 10 is initially in a logic “1” or AP state. As described above, to store a “0”, a current Ic greater than the critical current is caused to flow through transistor 20 in the direction of arrow 40. To achieve this, the source node (SL or source line) of transistor 20 is coupled to the ground potential via a resistive path (not shown), a positive voltage Vpp is applied to the gate node (WL or wordline) of transistor 20, and a positive voltage Vcc is applied to the drain node (BL or bitline) of transistor 20.
FIG. 5 is an exemplary timing diagram of the voltage levels at nodes WL, SL, SN and BL during write “0” operation, occurring approximately between times 25 ns and 35 ns, and write “1” operation, occurring approximately between times 45 ns and 55 ns, for a conventional MTJ such as MTJ 10 shown in FIGS. 4A and 4B. Supply voltage Vcc is assumed to be 1.8 volts. Signal WL, as well as signal CS, which is a column select signal, are shown as having been boosted to a higher Vpp programming voltage of about 3.0 volts. During the write “0” operation, the voltages at nodes BL, SL and SN are shown as being approximately equal to about 1.43 V, 0.34 V, and 0.88 V respectively. During the write “1” operation, the voltages at nodes BL, SL and SN are shown as being approximately equal to about 0.21 V, 1.43 V, and 0.84 V respectively. Although not shown, for this exemplary computer simulation, the currents flowing through the MTJ during write “0” and “1” operations are respectively 121 μA and 99.2 μA.
FIG. 4B shows an MTJ being programmed to switch from a parallel state to an anti-parallel state so as to store a “1”. It is assumed that MTJ 10 is initially in a logic “0” or P state. To store a “1”, a current Ic greater than the critical current is caused to flow through transistor 20 in the direction of arrow 35. To achieve this, node SL is supplied with the voltage Vcc via a resistive path (not shown), node WL is supplied with the voltage Vpp, and node BL is coupled to the ground potential via a resistive path (not shown). Accordingly, during a write “1” operation, the gate-to-source voltage of transistor 20 is set to (VWL-VSN), and the drain-to-source voltage of transistor 20 is set to (VSL-VSN).
Dynamic random access memory (DRAM) is commonly used in many computing systems. Double data rate (DDR) is a type of synchronous (S)DRAM used to increase the speed of data reading and writing, or bandwidth, by using both the rising and falling edge of the clock signal to transfer data. The higher data bandwidth in DDR SDRAM is accommodated, in part, by the memory architecture having data be available simultaneously, and in parallel, for most if not all memory columns being accessed. That is accomplished by voltage sensing and latching the data locally at a sense amplifier on each memory column along a selected row. For example, during read, once a row is selected, all the data bits on all the columns along that row are sensed and latched and available for cycling out of the part. The row access and data sensing time is a relatively long time; however, that time is made up by having all the data on a row available simultaneously. Then, the data from the columns may be cycled out of the memory very quickly during a burst operation. The burst operation relieves the address bus from cycling through each column address to conserve power, speed up operation, and to simplify the system while taking advantage that the processor frequently uses sequential data streams. Burst operation is provided by sending a column start address to the memory which then uses an internally generated count to sequentially select columns to rapidly “burst” a certain number of bits out on each of the memory's I/O pins from the memory's burst buffer. The number of internally pre-fetched bits x corresponds to DDRx type memory. FIG. 6 shows a table for a DDR SDRAM industry standard for the order of accesses within a burst by the logical column start address for burst lengths of 2, 4, 8 or 16 bits. DDR DRAM write operations are performed analogously to latch and store all the data along a selected row.
Most resistive type non-volatile memory (NVM), such as STT-RAM, or ReRAM for example, use current sense amplifiers to read out data. Current sensing circuits directly detect memory cell current as a signal. It is inherently faster than voltage sensing because it avoids large voltage swings of the highly capacitive bitlines. However, circuit complexity for current sensing takes more chip area than voltage sensing, which may preclude having a sense amplifier for every bitline, especially for the small bitline pitch found in tightly pitched memory cell arrays. The bitline pitch can be as small as 2 F, where F is the minimum feature size.
In DRAM architectures, a page size is typically 1K Bytes (8 Kb) to 2 K Bytes (16 kb). All 1 KB or 2 KB must be activated and latched at the same time even though the user may only need to fetch 8 Bytes or 16 Bytes of data or less. It would be desirable to provide a method and system to enable high bandwidth operation similar to DRAM page mode burst operation, but without reading the entire page as in the case of DRAM.
It would also be desirable to increase the array efficiency and save die size by locating the current sense amplifiers outside the memory array block so that they are shared with the entire memory block. It would also be desirable to attain power savings on the order of 1000 times.